        }
     */
    /**
    }
 * 
 */
/**
} 
     * 获取费用类型名称
     * 获取支付方式名称
     * 获取支付状态名称
     * 计算未支付金额
     * 计算逾期天数
     * 判断是否逾期
 * 物业费视图对象
 * @author Wu.Liang
            case 0:
            case 1:
            case 2:
            case 3:
            case 4:
            case 5:
            case "alipay":
            case "bank":
            case "cash":
            case "transfer":
            case "wechat":
@Data
            default:
        if (amount == null) {
        if (feeType == null) {
        if (!getIsOverdue()) {
        if (paymentAmount == null) {
        if (paymentMethod == null || paymentMethod.isEmpty()) {
        if (paymentStatus == 1) { // 已支付
        if (paymentStatus == null) {
        if (paymentStatus == null || dueDate == null) {
import io.swagger.v3.oas.annotations.media.Schema;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import lombok.Data;
package com.smart.community.property.vo;
    private BigDecimal amount;
    private BigDecimal houseArea;
    private BigDecimal lateFee;
    private BigDecimal paymentAmount;
    private BigDecimal unpaidAmount;
    private Boolean canOnlinePay;
    private Boolean isOverdue;
    private Integer feeType;
    private Integer overdueDays;
    private Integer paymentStatus;
    private LocalDate dueDate;
    private LocalDateTime createTime;
    private LocalDateTime paymentTime;
    private LocalDateTime updateTime;
    private Long communityId;
    private Long householdId;
    private Long id;
    private Long onlinePaymentId;
    private Long userId;
    private String billingPeriod;
    private String buildingName;
    private String communityName;
    private String feeName;
    private String feeTypeName;
    private String householdInfo;
    private String onlinePaymentOrderNo;
    private String paymentMethod;
    private String paymentMethodName;
    private String paymentQrCodeUrl;
    private String paymentStatusName;
    private String remark;
    private String roomNumber;
    private String userName;
    private String userPhone;
    public BigDecimal getUnpaidAmount() {
    public Boolean getIsOverdue() {
public class PropertyFeeVO {
    public Integer getOverdueDays() {
    public String getFeeTypeName() {
    public String getPaymentMethodName() {
    public String getPaymentStatusName() {
            return "";
            return 0;
                return "电费";
                return "燃气费";
                return "水费";
                return "停车费";
                return "微信支付";
                return "未支付";
                return "未知";
                return "物业费";
                return "现金";
                return "已支付";
                return "银行卡";
                return "逾期";
                return "支付宝";
                return "转账";
            return amount;
        return amount.subtract(paymentAmount).max(BigDecimal.ZERO);
            return BigDecimal.ZERO;
        return dueDate.isBefore(LocalDate.now());
            return false;
        return (int) java.time.ChronoUnit.DAYS.between(dueDate, LocalDate.now());
                return paymentMethod;
    @Schema(description = "备注")
    @Schema(description = "创建时间")
    @Schema(description = "到期日期")
    @Schema(description = "房号")
    @Schema(description = "房户ID")
    @Schema(description = "房屋面积")
    @Schema(description = "房屋信息")
    @Schema(description = "费用金额")
    @Schema(description = "费用类型：1-物业费，2-水费，3-电费，4-燃气费，5-停车费")
    @Schema(description = "费用类型名称")
    @Schema(description = "费用名称")
    @Schema(description = "费用ID")
    @Schema(description = "更新时间")
    @Schema(description = "计费周期")
    @Schema(description = "楼栋名称")
    @Schema(description = "社区名称")
    @Schema(description = "社区ID")
    @Schema(description = "是否可以在线支付")
    @Schema(description = "是否逾期")
    @Schema(description = "未支付金额")
@Schema(description = "物业费视图对象")
    @Schema(description = "已支付金额")
    @Schema(description = "用户手机号")
    @Schema(description = "用户姓名")
    @Schema(description = "用户ID")
    @Schema(description = "逾期天数")
    @Schema(description = "在线支付订单号")
    @Schema(description = "在线支付订单ID")
    @Schema(description = "支付二维码URL")
    @Schema(description = "支付方式")
    @Schema(description = "支付方式名称")
    @Schema(description = "支付时间")
    @Schema(description = "支付状态：0-未支付，1-已支付，2-逾期")
    @Schema(description = "支付状态名称")
    @Schema(description = "滞纳金")
 * @since 2025-06-26
        switch (feeType) {
        switch (paymentMethod.toLowerCase()) {
        switch (paymentStatus) {
 * @version 2.0.0
